package day0606;

import java.util.Scanner;

//假设有一个很长的花坛，一部分地块种植了花，另一部分却没有。可是，花不能种植在相邻的地块上，它们会争夺水源，两者都会死去。
//给你一个整数数组flowerbed 表示花坛，由若干 0 和 1 组成，其中 0 表示没种植花，1 表示种植了花。
// 另有一个数n ，能否在不打破种植规则的情况下种入 n 朵花？能则返回 true ，不能则返回 false 。
//
//来源：力扣（https://leetcode.cn/）
public class File6 {
    public static void main(String[] args) {

        int[] flowers={0,1,0,1,0,0,0,1,0,1,0};
        //2.用for循环判断每个位置能否放入1(存元素的前提：两个1不能相邻)
        int count=0;
        for(int i=0; i<=10; i++){
            //如果满足存储元素的前提(两个1没相邻)，就给flowers数组的第i位存入一个1
            //第一位和最后一位可以放入1的情况为：   int[] flowers={0,0,0,1,0,0,0,1,0,0,0};
            if( (i==0&&flowers[0]==0&&flowers[1]==0)|| //当前是给第0位放入1，如果第0位和第1位元素都是0就可以
                (i==flowers.length-1 && flowers[flowers.length-1]==0 && flowers[flowers.length-2]==0)||
                //上边是给最后一位放入1，序号必须是11-1，并且最后一位和倒数第二位元素都是0，就可以
                (i!=0&& i!=flowers.length-1&&flowers[i-1]==0&&flowers[i+1]==0&& flowers[i]==0 ) ){
                //上边是给中间位置放入1(不是最后一位也不是第0位 i!=11-1  并且i!=0) 并且连续三个元素都是0就可以
                flowers[i]=1;
                count++;
            }
        }

        Scanner s=new Scanner(System.in);
        int n=s.nextInt();
        if(count>=n){
            System.out.println("可以种下" +n +"朵花");
        }else{
            System.out.println("种不下" +n +"朵花");
        }


    }



}